home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
EnigmA Amiga Run 1997 May
/
EnigmA AMIGA RUN 18 (1997)(G.R. Edizioni)(IT)[!][issue 1997-05][EAR-CD II].iso
/
recent2
/
qamitrack1.80.lha
/
QAmiTrack
/
source
/
TrackRexx.h
< prev
Wrap
C/C++ Source or Header
|
1997-04-06
|
4KB
|
180 lines
/*
* Source generated with ARexxBox 1.12 (May 18 1993)
* which is Copyright (c) 1992,1993 Michael Balzer
*/
#ifndef _TrackRexx_H
#define _TrackRexx_H
#define RXIF_INIT 1
#define RXIF_ACTION 2
#define RXIF_FREE 3
#define ARB_CF_ENABLED (1L << 0)
#define ARB_HF_CMDSHELL (1L << 0)
#define ARB_HF_USRMSGPORT (1L << 1)
struct RexxHost
{
struct MsgPort *port;
char portname[ 80 ];
long replies;
struct RDArgs *rdargs;
long flags;
APTR userdata;
};
struct rxs_command
{
char *command, *args, *results;
long resindex;
void (*function)( struct RexxHost *, void **, long, struct RexxMsg * );
long flags;
};
struct arb_p_link
{
char *str;
int dst;
};
struct arb_p_state
{
int cmd;
struct arb_p_link *pa;
};
#ifndef NO_GLOBALS
extern char RexxPortBaseName[80];
extern struct rxs_command rxs_commandlist[];
extern struct arb_p_state arb_p_state[];
extern int command_cnt;
extern char *rexx_extension;
#endif
void ReplyRexxCommand( struct RexxMsg *rxmsg, long prim, long sec, char *res );
void FreeRexxCommand( struct RexxMsg *rxmsg );
struct RexxMsg *CreateRexxCommand( struct RexxHost *host, char *buff, BPTR fh );
struct RexxMsg *CommandToRexx( struct RexxHost *host, struct RexxMsg *rexx_command_message );
struct RexxMsg *SendRexxCommand( struct RexxHost *host, char *buff, BPTR fh );
void CloseDownARexxHost( struct RexxHost *host );
struct RexxHost *SetupARexxHost( char *basename, struct MsgPort *usrport );
struct rxs_command *FindRXCommand( char *com );
char *ExpandRXCommand( struct RexxHost *host, char *command );
char *StrDup( char *s );
void ARexxDispatch( struct RexxHost *host );
/* rxd-Strukturen dürfen nur AM ENDE um lokale Variablen erweitert werden! */
struct rxd_connect
{
long rc, rc2;
struct {
char *action;
long *actionindex;
char *host;
long *hostindex;
char *confirm;
} arg;
};
void rx_connect( struct RexxHost *, struct rxd_connect **, long, struct RexxMsg * );
struct rxd_get
{
long rc, rc2;
struct {
char *var, *stem;
long clients;
long actions;
} arg;
struct {
char *server;
long *port;
long *confirm;
long *connected;
long *numclients;
long *enabled;
long *numactions;
long *hidden;
char *comment;
long *lastentryclicked;
char **clients;
char **comments;
long **lastchanged;
char **actions;
char **commands;
long *currentaction;
char *logfile;
char *speaklevel;
char *loglevel;
char **usernames;
char **realnames;
long **winopen;
char *viewby;
char *visibleto;
char *username;
char *realname;
} res;
};
void rx_get( struct RexxHost *, struct rxd_get **, long, struct RexxMsg * );
struct rxd_quit
{
long rc, rc2;
};
void rx_quit( struct RexxHost *, struct rxd_quit **, long, struct RexxMsg * );
struct rxd_request
{
long rc, rc2;
struct {
char *var, *stem;
char *title;
char *message;
char *buttons;
} arg;
struct {
long *clicked;
} res;
};
void rx_request( struct RexxHost *, struct rxd_request **, long, struct RexxMsg * );
struct rxd_set
{
long rc, rc2;
struct {
char *var, *stem;
char *enabled;
char *hidden;
char *confirm;
long *left;
long *top;
long *width;
long *height;
char *comment;
char *server;
char *windowtitle;
long *currentactionindex;
char *action;
long *port;
char *currentaction;
char *logfile;
char *speaklevel;
char *loglevel;
char *viewby;
} arg;
struct {
long *actionindex;
} res;
};
void rx_set( struct RexxHost *, struct rxd_set **, long, struct RexxMsg * );
#endif